#include"myshell.h"
#define SIZE 1024

int main()
{
    char commandstr[SIZE];
    //命令行是一个死循环
    while(1)
    {
        //每一次均需要重置全局的数组、变量
        InitGlobal();
        //1、输出命令行提示符
        PrintCommandPrompt();
        //2、获取用户的输入命令
        if(GetCommandString(commandstr , SIZE)==false) continue;//放入全局的字符数组中
        //打印出来看一下
        //printf("%s\n" , commandstr);
           
        //解析之前先对整个字符串进行扫描
        CheckRedir(commandstr);
         //3、对用户输入的字符串解析为命令行参数
         ParseCommandString(commandstr); 
           
         //在正式执行前，判断这个命令是不是内建命令
         //内建命令不多，穷举便好
         if(BuiltCommandExec()) continue;

         //4、执行命令，让子进程来执行
         ForkAndExec();
    }

    return 0;
}
